package com.huzz.util.desin.memento;

// 使用备忘录模式
public class MementoPatternExample {
    public static void main(String[] args) {
        // 原发
        Originator originator = new Originator();
        // 负责人
        Caretaker caretaker = new Caretaker();

        // 设置初始状态
        originator.setState("State 1");

        // 保存状态
        caretaker.setMemento(originator.saveStateToMemento());

        // 修改状态
        originator.setState("State 2");

        // 输出当前状态
        originator.printState();

        // 恢复到之前的状态
        originator.restoreStateFromMemento(caretaker.getMemento());

        // 输出恢复后的状态
        originator.printState();
    }
}